package com.zz.framework.core.view

import android.app.Activity
import android.app.Dialog
import android.content.Context
import android.content.DialogInterface
import android.view.View
import android.widget.TextView

/**
 * Copyright © 2019 zanezhao All rights reserved.
 * @author: zanezhao
 * @email: 1820022519@qq.com
 * @version: V1.0
 */
abstract class BaseUIFactory(protected var mContext: Context) {

    abstract val titleBackButtonLeftMargin: Int

    abstract val titleBackButtonTopMargin: Int

    abstract val titleBackButtonBottomMargin: Int

    abstract val titleRightImageButtonRightMargin: Int

    abstract val titleRightImageButtonTopMargin: Int

    abstract val titleRightTextButtonRightMargin: Int

    abstract val titleRightTextButtonTopMargin: Int

    abstract val titleBackagegroundDrawbleRes: Int

    abstract val titleBackagegroundColorRes: Int

    abstract val progressDialogSize: Int

    abstract fun createTitleBackButton(): View

    abstract fun createTitleRightImageButton(resId: Int): View

    abstract fun createTitleRightTextButton(textId: String): View

    abstract fun createTitleRightTextButton(textId: Int): View

    abstract fun createProgressDialog(): View

    abstract fun createYesNoDialog(
        context: Context,
        yesText: String,
        noText: String,
        message: String,
        titleIcon: Int,
        title: String,
        listener: DialogInterface.OnClickListener
    ): Dialog

    fun onTitleCreated(activity: Activity, backButton: View?, textViewTitle: TextView) {

    }
}
